﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CAD.DAL;
using CAD.DAL.ventaDSTableAdapters;
using CAD.DTO;

namespace CAD.BLL
{
    public class ventaBLL
    {
        private static venta rowToDto(ventaDS.venta_SelectByIdRow row)
        {
            venta objCliente = new venta();
            objCliente.Estado = row.estado;
            objCliente.Estadoventa = row.estadoventa;
            objCliente.Fechaventa = row.fechaventa;
            objCliente.Fecharegistro = row.fecharegistro;
            objCliente.Id = row.id;
            objCliente.Idalmacen = row.idalmacen;
            objCliente.Idcliente = row.idcliente;
            objCliente.Idregistrador = row.idregistrador;
            objCliente.Idvendedor = row.idvendedor;
         //   objCliente.Nrodocumento = row.nrodocumento;
            objCliente.Observacion = row.observacion;
            objCliente.Tipoventa = row.tipoventa;
            objCliente.Total = row.total;
            objCliente.Idcaja = row.idcaja;
            return objCliente;
        }
        public static venta SelectByID(int id)
        {
            venta_SelectByIdTableAdapter adapter = new venta_SelectByIdTableAdapter();
            ventaDS.venta_SelectByIdDataTable dtCliente = adapter.SelectByID(id);
            venta objCliente;
            try
            {
                objCliente = rowToDto(dtCliente[0]);
            }
            catch (Exception)
            {
                objCliente = null;
            }
            return objCliente;
        }
        public static int insertar(int idcliente, int idvendedor, int idregistrador, int idalmacen, string tipoventa, DateTime fechaventa, DateTime fecharegistro, string estadocenta, string nrodocumento, double total, string observacion, int idcaja)
        {
            int? estudianteId = 0;
            venta_SelectByIdTableAdapter adapter = new venta_SelectByIdTableAdapter();
            adapter.insert(ref estudianteId, idcliente, idvendedor, idalmacen, idregistrador, tipoventa, estadocenta, fechaventa, fecharegistro, nrodocumento, total, observacion, true, idcaja);
            int id = (int)estudianteId;
            return id;
        }
        public static void anular(int id)
        {
            venta_SelectByIdTableAdapter adapter = new venta_SelectByIdTableAdapter();
            adapter.anular(id, false);
        }
        public static void updateestadoventa(int id, string estadocompra)
        {
            venta_SelectByIdTableAdapter adapter = new venta_SelectByIdTableAdapter();
            adapter.updateestadoventa(id, estadocompra);
        }
    }
}
